package com.longqin.wechat.feign;

import java.util.Map;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import com.longqin.wechat.entity.ResponseData;

/**
 * feign远程接口
 */
@FeignClient(value = "longqin-business", fallback = FeignServiceFallback.class)
public interface FeignService {
	
	/**
	 * @Description 获取工作所有表单
	 * @Author longqin
	 * @Time: 2025年05月16日
	 */
	@RequestMapping(value = "/wfWork/getWorkFlowProcessList", method = RequestMethod.GET, headers = {
			"servie-key=longqin-wechat", "request-uri=/wfWork/getWorkFlowProcessList"})
	public ResponseData<Object> getWorkFlowProcessList(@RequestParam(value = "workId") Integer workId);
	
	/**
	 * @Description 获取流程进程表单
	 * @Author longqin
	 * @Time: 2025年05月16日
	 */
	@RequestMapping(value = "/wfWork/getFlowProcessForm", method = RequestMethod.GET, headers = {
			"servie-key=longqin-wechat", "request-uri=/wfWork/getFlowProcessForm"})
	public ResponseData<Object> getFlowProcessForm(@RequestParam(value = "processId") Integer processId);
	
	/**
	 * @Description 流程处理
	 * @Author longqin
	 * @Time: 2025年05月16日
	 */
	@RequestMapping(value = "/wfWork/dealWork", method = RequestMethod.POST, headers = {
			"servie-key=longqin-wechat", "request-uri=/wfWork/dealWork"})
	public ResponseData<Object> dealWork(@RequestBody Map<String,Object> params);
	
	/**
	 * @Description 获取流程开始节点表单
	 * @Author longqin
	 * @Time: 2025年05月23日
	 */
	@RequestMapping(value = "/wfWork/getFlowBeginNodeForm", method = RequestMethod.GET, headers = {
			"servie-key=longqin-wechat", "request-uri=/wfWork/getFlowBeginNodeForm"})
	public ResponseData<Object> getFlowBeginNodeForm(@RequestParam(value = "flowId") Integer flowId);
}
